package com.thesis.manage.service;

import com.github.pagehelper.PageInfo;
import com.thesis.manage.common.service.BaseService;
import com.thesis.manage.domain.Major;
import com.thesis.manage.service.module.vo.MajorVO;
import org.springframework.data.domain.Pageable;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;

/**
 * @author php
 * @date 2018/1/18
 */
public interface MajorService extends BaseService<Major> {
    /**
     * 导入数据
     *
     * @param file 数据文件
     */
    void importExcel(MultipartFile file);

    /**
     * 导出数据
     */
    void export(HttpServletResponse response);

    /**
     * 查找详细信息（加上班级信息）
     *
     * @param id id
     * @return majorVO
     */
    MajorVO findInfoById(Long id);

    /**
     * 查找详细信息
     *
     * @param pageable 分页
     * @return pageInfo
     */
    PageInfo<MajorVO> detailInfo(final Pageable pageable);

    /**
     * 通过名称查找
     *
     * @param majorName 名称
     * @return Major
     */
    Major findByName(String majorName);
}
